A. Field of Invention
The present invention relates to database systems for evaluation of items according to user preferences, and more particularly to database systems using domain specific knowledge and utility functions to identify items meeting user defined criteria.
B. Background of Invention
The proliferation of computers and of the exploding use of the Internet have brought with them the increasing availability of computerized databases of products, information, and services from which users, such as consumers or professionals, evaluate and purchase such items. However, the ever increasing availability of such databases to more and diverse types of users has resulted in a widening gap between the existing and the user required skills for using these databases.
There exists sophisticated tools for database mining, analysis and the subsequent generation of information from the extracted data, but none of these tools allow users to quickly and efficiently perform a frequently desired task of finding in the database the item most suited to the user's objective and subjective preferences.
A typical activity involving this type of database access is online shopping: for example, a shopper is not interested in purchasing all of the VCRs that match her criteria, but only the one that gets closest to some "ideal VCR" defined by the user's own objective and subjective criteria (e.g., low cost, high performance, reliable, etc.). Conversely, even if no items match the shopper's search criteria, she might still be interested in purchasing the item that is `closest` or most similar to the her criteria. Current database access tools do not meet the following needs of such users for the following reasons.
First, conventional databases will often return empty search result sets where no matches found are found to the set of specific criteria input by a user; alternatively, they may return too many matches where very few critieria are specified. In either case, the user is unable to identify which items are most similar to her overall criteria, and must reformulate her search criteria.
Second, compound queries where multiple attributes are specified and which result in empty projections do not tell which criterion or group of criteria were responsible for reducing the number of matches to zero. Conversely, when too many matches are found, conventional tools provide no indication of the sensitivity of the database to each criterion. Thus, the user is unable to modify her criteria to eliminate such criteria, but must proceed by trial and error.
Third, shoppers compare items not on the basis of a single criterion, but using the concept of similarity given all or most critieria. For example, a car buyer who has identified a first car as a suitable item, may be looking for a less expensive car which implicitly would not only have a lower price tag, but simultaneously retain all other desirable features of the first car as much as possible. However, current database tools have the ability to evaluate items only along one dimension (e.g., price) without regard for the overall similarity of items along multiple dimensions, and thus are not suitable for this buyer to identify such a similar alternative car with similar features to the first car.
Fourth, many domains (automobiles, computers, financial instruments) are very complex and require significant expertise to understand at the database level ("variable valve timing", "256K cache", "0.14 negative market correlation"). The typical consumer does not have sufficient expertise to evalute different items with respect to such technical data, but does know various high level critieria that are important to their decision making. The complexity of the underlying domain makes it difficult for a shopper to formulate a query that reflects his fuzzy needs and desires, resulting in a mismatch between the results the database provides and the user's actual needs.
Finally, many shoppers are unable to describe what they are looking for with defined search criteria, but they can identify which items do not satisfy their requirements when such items are presented to them. With conventional tools, such shoppers are unable to deconstruct the domain into its constituent components and define useful search criteria which can then be used to select items from the database for further evaluation.
Accordingly, it is desirable to provide a database system that supports analysis and evaluation of the similarity of items in the database with respect to multiple critieria.